package com.manager.container.service;

import com.manager.common.vo.PageVO;
import com.manager.model.DockerDeploy;
import com.manager.model.DockerDeployVolume;

import javax.print.Doc;
import java.util.List;

public interface DockerDeployService {

    PageVO getDeployPage(DockerDeploy model) throws Exception;

    PageVO getRealContainerInfo(DockerDeploy model) throws Exception;

    void addDeploy(DockerDeploy model);

    void updateDeploy(DockerDeploy model);

    void deleteDeploy(DockerDeploy model);

    void updateBaseInfo(DockerDeploy model);

    void updateResourceInfo(DockerDeploy model);

    void updateDockerEnvFilePath(DockerDeploy model);

    void updateParamsFilePath(DockerDeploy model);

    void updateCustomParams(DockerDeploy model);

    void updateVolumes(DockerDeploy model);

    void updateNetwork(DockerDeploy model);

    void updateContainerDeployInfo(DockerDeploy model);

    List<DockerDeploy> getNoDeployedContainerList();

    List<DockerDeploy> getDeployedContainerList();

    List<DockerDeployVolume> getDockerDeployVolumeList(DockerDeploy model);

    List<DockerDeployVolume> getDockerDeployVolumeList(String id);

    DockerDeploy getDockerDeployById(DockerDeploy model);

    DockerDeploy getDockerDeployById(String id);

    void updateContainerBackupCorn(DockerDeploy model);

    List<DockerDeploy> getDockerDeployBackupList();

    List<DockerDeploy> getDockerDeployByIds(String ids);
}
